83 research outputs found
Speeding up SOR Solvers for Constraint-based GUIs with a Warm-Start Strategy
Many computer programs have graphical user interfaces (GUIs), which need good
layout to make efficient use of the available screen real estate. Most GUIs do
not have a fixed layout, but are resizable and able to adapt themselves.
Constraints are a powerful tool for specifying adaptable GUI layouts: they are
used to specify a layout in a general form, and a constraint solver is used to
find a satisfying concrete layout, e.g.\ for a specific GUI size. The
constraint solver has to calculate a new layout every time a GUI is resized or
changed, so it needs to be efficient to ensure a good user experience. One
approach for constraint solvers is based on the Gauss-Seidel algorithm and
successive over-relaxation (SOR).
Our observation is that a solution after resizing or changing is similar in
structure to a previous solution. Thus, our hypothesis is that we can increase
the computational performance of an SOR-based constraint solver if we reuse the
solution of a previous layout to warm-start the solving of a new layout. In
this paper we report on experiments to test this hypothesis experimentally for
three common use cases: big-step resizing, small-step resizing and constraint
change. In our experiments, we measured the solving time for randomly generated
GUI layout specifications of various sizes. For all three cases we found that
the performance is improved if an existing solution is used as a starting
solution for a new layout
Source code independent reverse engineering of dynamic web sites
This paper describes source code independent reverse engineering of dynamic
web sites. The tool Revangie builds a form-oriented analysis model solely from
the usage of a web application. The recovered models can be, for example,
exploited for the purpose of requirements engineering and load test
development. Revangie can explore a given web application fully automatically
or can passively record its usages. The collected data, i.e., data about
screens, server-side programs, and system responsiveness, are analyzed in
order to build a user interface model. The paper presents several adequate
screen classifications, which are utilized to yield significant models
Reverseorc:Reverse engineering of resizable user interface layouts with or-constraints
Reverse engineering (RE) of user interfaces (UIs) plays an important role in
software evolution. However, the large diversity of UI technologies and the
need for UIs to be resizable make this challenging. We propose ReverseORC, a
novel RE approach able to discover diverse layout types and their dynamic
resizing behaviours independently of their implementation, and to specify them
by using OR constraints. Unlike previous RE approaches, ReverseORC infers
flexible layout constraint specifications by sampling UIs at different sizes
and analyzing the differences between them. It can create specifications that
replicate even some non-standard layout managers with complex dynamic layout
behaviours. We demonstrate that ReverseORC works across different platforms
with very different layout approaches, e.g., for GUIs as well as for the Web.
Furthermore, it can be used to detect and fix problems in legacy UIs, extend
UIs with enhanced layout behaviours, and support the creation of flexible UI
layouts.Comment: CHI2021 Full Pape
Modeling a Realistic Workload for Performance Testing
Abstract—Load testing of web applications can be specified by simulating realistic user behavior with stochastic form-oriented analysis models. Stochastic models have advantages over load test models that simply play back recorded session data: they are easier to specify and achieve a higher coverage of the different operational paths. There are challenges when specifying load tests such as the generation of form parameters and the recognition of pages returned by the system. We propose how these challenges can be overcome by adding additional specifications to a form-oriented model. Furthermore, we discuss several workload models and explain why some commonly used workload models are in fact unrealistic and produce misleading results. The stochastic form-oriented load testing approach can be generalized to deal with other submit-response systems such as those consisting of web services. I
ORCSolver: An Efficient Solver for Adaptive GUI Layout with OR-Constraints
OR-constrained (ORC) graphical user interface layouts unify conventional
constraint-based layouts with flow layouts, which enables the definition of
flexible layouts that adapt to screens with different sizes, orientations, or
aspect ratios with only a single layout specification. Unfortunately, solving
ORC layouts with current solvers is time-consuming and the needed time
increases exponentially with the number of widgets and constraints. To address
this challenge, we propose ORCSolver, a novel solving technique for adaptive
ORC layouts, based on a branch-and-bound approach with heuristic preprocessing.
We demonstrate that ORCSolver simplifies ORC specifications at runtime and our
approach can solve ORC layout specifications efficiently at near-interactive
rates.Comment: Published at CHI202
- …